Causal-Consistent Replay Reversible Semantics for Message Passing Concurrent Programs

نویسندگان

چکیده

Causal-consistent reversible debugging is an innovative technique for concurrent systems. It allows one to go back in the execution focusing on actions that most likely caused a visible misbehavior. When such action selected, debugger undoes it, including all and only its consequences. This operation called causal-consistent rollback. In this way, user can avoid being distracted by of other, unrelated processes. work, we introduce dual notion: replay. We allow record running program and, contrast traditional replay debuggers, reproduce misbehavior inside causes. Furthermore, present unified framework combines both Although ideas are rather general, focus popular functional programming language based message passing: Erlang.

برای دانلود باید عضویت طلایی داشته باشید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Efficient memory management for concurrent programs that use message passing

We present an efficient memory management scheme for concurrent programming languages where communication occurs by using message passing with copying semantics. The runtime system is built around process-local heaps, which frees the memory manager from redundant synchronization in a multi-threaded implementation and allows the memory reclamation of process-local heaps to be a private business ...

متن کامل

Verifying Concurrent Message-Passing C Programs with Recursive Calls

We consider the model-checking problem for C programs with (1) data ranging over very large domains, (2) (recursive) procedure calls, and (3) concurrent parallel components that communicate via synchronizing actions. We model such programs using communicating pushdown systems, and reduce the reachability problem for this model to deciding the emptiness of the intersection of two context-free la...

متن کامل

Causal-Consistent Reversible Debugging

Reversible debugging provides developers with a way to execute their applications both forward and backward, seeking the cause of an unexpected or undesired event. In a concurrent setting, reversing actions in the exact reverse order in which they have been executed may lead to undo many actions that were not related to the bug under analysis. On the other hand, undoing actions in some order th...

متن کامل

The Performance of Two Tracing and Replay Algorithms for Message-Passing Parallel Programs

Debugging parallel message-passing programs is complicated by the non-determinism that is inherent in those programs. Cyclical debugging, which is a proven method for sequential programs, often fails when debugging parallel programs because different executions of the same program may exhibit different behaviors due to non-determinism. Some approaches have been studied to remedy this problem. W...

متن کامل

Explicit Message Passing for Concurrent Clean

In this paper we look at Concurrent Clean and concurrency and notice that the language has some shortcomings with respect to communication. It does not provide non-determinism, eecient multicasting and data-driven communication. A message passing extension for Concurrent Clean is proposed which provides eecient many-to-many communication. In contrast to other solutions, we chose to have an asyn...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Fundamenta Informaticae

سال: 2021

ISSN: ['1875-8681', '0169-2968']

DOI: https://doi.org/10.3233/fi-2021-2005